package smartgrid.conf;

import javax.xml.bind.annotation.XmlElement;
import smartgrid.Constants;

public class ProsumerSocialConf {
	
	private double	costToDenounce;
	
	private int			normActivateNumMsg;
	
	private int			normActivateNumAction;
	
	private double	normActivateSalThreshold;
	
	private boolean	normActive;
	
	private double	normSalience;
	
	private double	individualWeight;
	
	private double	normativeWeight;
	
	private double	reputationWeight;
	
	private double	demandDW;
	
	private double	demandRW;
	
	private double	imageValue;
	
	private double	reputationValue;
	
	private double	imageWeight;
	
	private double	ostracizeThreshold;
	
	private int			influenceRadius;
	
	private double	influenceThreshold;
	
	
	public double getCostToDenounce() {
		return this.costToDenounce;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_COST_DENOUNCE)
	public void setCostToDenounce(double costToDenounce) {
		this.costToDenounce = costToDenounce;
	}
	
	
	public int getNormActivateNumMsg() {
		return this.normActivateNumMsg;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_NORM_ACTIVATE_NUM_MSG)
	public void setNormActivateNumMsg(int normActivateNumMsg) {
		this.normActivateNumMsg = normActivateNumMsg;
	}
	
	
	public int getNormActivateNumAction() {
		return this.normActivateNumAction;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_NORM_ACTIVATE_NUM_ACTION)
	public void setNormActivateNumAction(int normActivateNumAction) {
		this.normActivateNumAction = normActivateNumAction;
	}
	
	
	public double getNormActivateSalThreshold() {
		return this.normActivateSalThreshold;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_NORM_ACTIVATE_SAL_THRESHOLD)
	public void setNormActivateSalThrshld(double normActivateSalThreshold) {
		this.normActivateSalThreshold = normActivateSalThreshold;
	}
	
	
	public boolean getNormActive() {
		return this.normActive;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_NORM_ACTIVE)
	public void setNormActive(boolean normActive) {
		this.normActive = normActive;
	}
	
	
	public double getNormSalience() {
		return this.normSalience;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_INITIAL_NORM_SALIENCE)
	public void setInitNormSalience(double normSalience) {
		this.normSalience = normSalience;
	}
	
	
	public double getIndividualWeight() {
		return this.individualWeight;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_INDIVIDUAL_WEIGHT)
	public void setIndividualWeight(double individualWeight) {
		this.individualWeight = individualWeight;
	}
	
	
	public double getNormativeWeight() {
		return this.normativeWeight;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_NORMATIVE_WEIGHT)
	public void setNormativeWeight(double normativeWeight) {
		this.normativeWeight = normativeWeight;
	}
	
	
	public double getReputationWeight() {
		return this.reputationWeight;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_REPUTATION_WEIGHT)
	public void setReputationWeight(double reputationWeight) {
		this.reputationWeight = reputationWeight;
	}
	
	
	public double getDemandDW() {
		return this.demandDW;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_DEMAND_DISTANCE_WEIGHT)
	public void setDemandDW(double demandDW) {
		this.demandDW = demandDW;
	}
	
	
	public double getDemandRW() {
		return this.demandRW;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_DEMAND_REPUTATION_WEIGHT)
	public void setDemandRW(double demandRW) {
		this.demandRW = demandRW;
	}
	
	
	public double getImage() {
		return this.imageValue;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_INITIAL_IMAGE_VALUE)
	public void setImage(double imageValue) {
		this.imageValue = imageValue;
	}
	
	
	public double getReputation() {
		return this.reputationValue;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_INITIAL_REPUTATION_VALUE)
	public void setReputation(double reputationValue) {
		this.reputationValue = reputationValue;
	}
	
	
	public double getImageWeight() {
		return this.imageWeight;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_IMAGE_WEIGHT)
	public void setImageW(double imageWeight) {
		this.imageWeight = imageWeight;
	}
	
	
	public double getOstracizeThreshold() {
		return this.ostracizeThreshold;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_OSTRACIZE_THRESHOLD)
	public void setOstracizeThreshold(double ostracizeThreshold) {
		this.ostracizeThreshold = ostracizeThreshold;
	}
	
	
	public int getInfluenceRadius() {
		return this.influenceRadius;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_INFLUENCE_RADIUS)
	public void setInfluenceLevels(int influenceRadius) {
		this.influenceRadius = influenceRadius;
	}
	
	
	public double getInfluenceThreshold() {
		return this.influenceThreshold;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL_INFLUENCE_THRESHOLD)
	public void setInfluenceThreshold(double influenceThreshold) {
		this.influenceThreshold = influenceThreshold;
	}
}